/**
 * <p>
 * ISEP PropertitiesManager.java <br>
 * 系统配置Propertities文件管理方法类，
 * 主要用于系统参数设定的灵活更改，而不再需要系统重新编译
 * </P>
 * @author 
 * 2009-1-16 上午10:19:43
 */
package com.common.util;

import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;

import org.apache.log4j.Logger;

/**
 * 资源文件工具
 * @author fhway
 *
 */
public class PropertiesUtils {

	private static Logger log = Logger.getLogger(PropertiesUtils.class);
	private String resourceUrl="/config.properties";
	public PropertiesUtils() {
	}
	public PropertiesUtils(String resourceUrl) {
		this.resourceUrl=resourceUrl;
	}
	/**
	 * 
	 * <li> 功能描述：
	 * <li> 创建日期：2009-4-24
	 * @return                   
	 * <li> @author fhway
	 */
	public InputStream getResouceInputStream(){
		return PropertiesUtils.class.getClassLoader().getResourceAsStream(resourceUrl);
	}
	public InputStream getResouceInputStream(String url){
		return PropertiesUtils.class.getClassLoader().getResourceAsStream(url);
	}
	
	/**
	 * 
	 * <li> 功能描述：
	 * <li> 创建日期：2009-4-24
	 * @param id
	 * @return
	 * @throws IOException
	 * <li> @author fhway
	 */
	public String getResouceString(String id){
		Properties pro = new Properties();
		try {
			pro.load(getResouceInputStream());
		} catch (IOException e) {
			log.error("资源文件读取错误! " + e.getMessage(), e);
		}
		return pro.getProperty(id);
	}
	public String getResouceString(String propertyurl,String id) throws IOException{
		Properties pro = new Properties();
		try {
			pro.load(getResouceInputStream(propertyurl));
		} catch (IOException e) {
			log.error("资源文件读取错误! " + e.getMessage(), e);
		}
		return pro.getProperty(id);
	}
	
}
